Abstract class that defines the required interface for all resource provider sub-classes.
A ResourceProvider is used to load both XML and binary data from an external source. This could be from a filesystem or the resource manager of a specific renderer.